近几天购置了一台 NanoPi R3S 作为主路由使用,本文将记录从零开始配置的过程。
购买
在 pdd 上购买了 NanoPi R3S(2G + 32G),价格约 300 元,包含了电源适配器和 USB WiFi 网卡(COMFAST CF-811AC V3)。
开始配置时才发现大部分固件对这款 USB WiFi 网卡的支持并不好,显示无线未关联,只有 iStoreOS 和 21 版本及之前的 OpenWrt 支持较好,所以建议自己购买一个支持较好的 USB WiFi 网卡。
硬件
- NanoPi R3S(2G + 32G)
- 电源适配器(建议原装的5V 3A,但是实测5V 2.1A的充电宝也能带动)
- TF 卡(用来刷入 iStoreOS 系统,如使用线刷则不需要)
刷机
因为上面提到的 USB WiFi 网卡支持较好的系统版本较少,所以示例这边刷入 iStoreOS 系统,目前找到的问题是 WAN 网口只闪绿灯,LAN 网口只闪红灯,不影响正常使用。
R3S iStoreOS 固件:下载地址
可以先检查初始系统 FriendlyWrt 页面是否有eMMC刷机助手
功能,如果有则可以直接使用该功能刷入 iStoreOS 系统。
如果没有该功能,则需要先刷入最新版 FriendlyWrt 系统,然后再使用该功能刷入 iStoreOS。
参考 iStoreOS 官方文档。
启动后进入 FriendlyWrt 的 Web 界面,点击上方菜单的系统
- eMMC刷机助手
,然后选择 iStoreOS 的固件文件,点击开始刷机
。
刷机完成后,SYS灯 (红灯) 慢闪,LAN灯 (绿灯) 常亮,WAN灯 (绿灯) 常亮,表示刷机成功,需弹出 TF 卡或拔插电源以重启。
配置 USB WiFi 网卡
经测试,friendlywrt 似乎对 COMFAST CF-811AC V3 的支持较差,无法正常工作,显示无线未关联。将 etc/modules.d/11-rtl8821cu
文件中的 rtl8821cu
修改为 rtw_8821cu
后,虽然日志和界面都显示正常,但是无法搜索到其无线信号。
所以这边使用 iStoreOS 系统来配置 USB WiFi 网卡。
参考 another device with 0bda:1a2b not switching to c811,需要添加内核启动参数:usb-storage.quirks=0bda:1a2b:i
。
将新的 boot.scr
文件替换掉原 /boot/boot.scr
文件,可参考我的 github 仓库:istoreos-boot.scr。
重启后,USB WiFi 网卡应该就可以正常工作了。
修复江安西舍的 IPV6 问题
四川大学江安校区的锐捷校园网下发 /64 IPv6,所以可以配置 NAT66 或 IPV6 relay。
因为未分配 IPv6 前缀,所以会导致下游设备可能出现问题。
比如路由器无法获取分配 IPv6 前缀,导致无法正常工作,需要改为 AP 模式。以及虚拟机的网络无法正常工作,包括桥接模式和 NAT 模式。但是正常上网和访问 IPv6 网站没有问题。
所以我这边选择配置 NAT66。
配置 NAT66
可以直接使用 iStore 的 系统便利工具
软件,安装后在左侧菜单中找到 系统
- 系统便利工具
,然后点击 IPV6 NAT 3
执行。
如果想手动配置,可以参考以下步骤:
编辑
/etc/config/firewall
文件,添加以下内容:1
2
3
4config zone
option name 'wan'
...
option masq6 '1'LAN:把
RA
、DHCPv6
、NDP
从 relay 改为 server(或 hybrid)。修改 IPv6 ULA 前缀,将最开头的
fd
改为dd
即可,然后重启网络。
配置 IPV6 Relay
编辑
/etc/config/firewall
文件,添加以下内容:1
2
3
4config zone
option name 'wan'
...
option masq6 '0'WAN6:
RA
、DHCPv6
、NDP
都要设为relay
,并勾选 master。LAN:
RA
、DHCPv6
、NDP
也要设为relay
。
DAD 问题
似乎校园网配置有问题,Duplicate address Detection 总是警告与一台 MAC 地址为 34:7e:00:c6:d6:b5 的华为设备重复
所以需要在 sysctl.conf
中添加以下配置来关闭 DAD,并更改设备的 MAC:
/etc/sysctl.conf
文件中添加以下内容:
1 | net.ipv6.conf.eth0.dad_transmits = 1 |
/etc/config/network
文件中修改以下内容:
1 | config device |
重启后,IPv6 应该就可以正常工作了。